static DSP_STATIC_DATA const uint32_t in_com1[256] = {
    0x3ef42097, 0x3e86ad95, 0xbe3ea847, 0x3e18687c,
    0x3e0167c4, 0xbeed738c, 0xbe9bf9d4, 0xbb730272,
    0xbe012b5c, 0xbd8bd341, 0xbe56c288, 0x3e2b7752,
    0x3d6d3ae8, 0x3ea5bd92, 0xbe856a1c, 0x3e95df0f,
    0x3b22b472, 0xbd0be8f1, 0x3cf508cb, 0x3e1dd77f,
    0xbdac3a95, 0xbd9ab863, 0x3e79b6ec, 0x3d8a169d,
    0x3f4d8634, 0x3dbc68d8, 0x3daafaa7, 0x3f014ff9,
    0xbec1a42b, 0xbef5ddf1, 0xbcafe569, 0x3e2a281a,
    0x3e91440f, 0x3ecd254e, 0xbe96be70, 0xbe88e908,
    0x3ef1707d, 0x3e37712d, 0x3e5c9d81, 0xbf023aa5,
    0xbe22c3c5, 0xbf6cf542, 0x3ee3d442, 0xbcf98294,
    0xbea409ea, 0x3ec3f4fa, 0xbdaae52b, 0x3e5a3e26,
    0x3ec6c48c, 0x3db20a6e, 0xbd5a76b9, 0xbeb19ab8,
    0x3e2e70e0, 0xbe250bbc, 0xbb924224, 0x3e63e842,
    0x3e869163, 0x3f3cf722, 0x3e34791d, 0xbe47b92b,
    0x3d067f62, 0xbee01a2b, 0xbe65e261, 0xbebf2507,
    0xbd988616, 0xbd096da3, 0x3e9d26da, 0x3d5ed2dc,
    0xbed71c52, 0xbd7fd166, 0xbf07cd34, 0xbefc0ec4,
    0xbed07597, 0xbcb1d1bc, 0xbeacec8a, 0xbeb0c7a7,
    0xbe9178b9, 0x3edfebfc, 0x3efa2823, 0xbdfe0776,
    0xbbe138f4, 0x3ed2bc15, 0xbed07289, 0xbe945180,
    0x3e30f7f5, 0xbe838d1c, 0xbec79c1e, 0xbe0061c6,
    0x3eab34af, 0x3e740af6, 0x3e2e9bac, 0xbc4bc189,
    0x3ec7311c, 0x3f24d251, 0x3eaef71a, 0xbe2604cf,
    0x3eaf43a4, 0x3d8c5231, 0xbe5d61fb, 0x3f02bc90,
    0x3e37a19b, 0xbe30f194, 0xbe89922c, 0x3e5b789a,
    0x3ccd7401, 0xbe8fee45, 0xbf800000, 0x3e5c746d,
    0x3ebc6e53, 0xbe216b0d, 0x3f006d30, 0x3ef1d883,
    0x3dd6709e, 0x3df75fd2, 0xbd9da1a9, 0x3eb73e4d,
    0xbe2fe102, 0xbebc2abc, 0xbe55d2b7, 0x3ea0772a,
    0xbd25ad3e, 0xbed66b20, 0x3ecb63d4, 0xbea07d49,
    0xbdf0d341, 0x3f20e8ac, 0x3d06b855, 0x3e21e1fa,
    0xbde85bb8, 0x3ef7e694, 0xbe505258, 0xbee6e07b,
    0xbe6db444, 0xbe720578, 0xbe4590de, 0x3ca8fd1c,
    0xbe94d923, 0x3d83b1af, 0x3cc1590d, 0xbf3e0520,
    0xbe2d81ab, 0xbdc0f1d9, 0x3e9508fe, 0x3ecf4489,
    0x3b15e5b9, 0x3d5d2df0, 0xbde3eec5, 0xbe65fedc,
    0x3d378e4e, 0xbed0fc07, 0x3b2ae32e, 0x3eaddfb5,
    0xbdbdeec5, 0xbee8db66, 0x3e828b90, 0x3deb4f3a,
    0x3ef2c3f9, 0xbe08fd16, 0xbd4309f7, 0xbde5696b,
    0x3db4c760, 0xbeb8cff2, 0x3e573a47, 0xbed7f152,
    0xbe2bf4b7, 0xbda1e235, 0x3ef13523, 0x3e50bb92,
    0xbed1f2be, 0xbe990298, 0xbeb8937d, 0x3f2df3b4,
    0xbc050110, 0x3e499e73, 0xbdadc6ef, 0x3ccf21c4,
    0xbe7c69e8, 0x3f3de737, 0x3e1484dd, 0x3f0ca39e,
    0xbbfa9460, 0x3d680b7a, 0xbdd50f99, 0xbdd1fb7b,
    0xbd6d6a5e, 0x3ea893d4, 0x3ea5f6c8, 0xbc71156e,
    0x3ebe5729, 0xbe1abc40, 0xbe775064, 0x3dab6ea7,
    0xbeb164ba, 0xbeab400f, 0x3e98bedf, 0xbf1b3922,
    0xbe6a26f8, 0xbebcf88d, 0x3e81f29f, 0x3ea622f1,
    0x3e60207e, 0xbe9112a7, 0x3e87e67d, 0xbe17720f,
    0x3f03302b, 0xbe0d69ea, 0xbd390706, 0xbe8b340d,
    0x3e71312d, 0xbe5f80e7, 0x3e2acad8, 0x3d0b921f,
    0x3ebaecf7, 0xbecaf0bf, 0xbd7f0ea8, 0x3e32bd1c,
    0xbe0ecc4c, 0x3d0497fa, 0xbebe2e21, 0x3e26f946,
    0x3de3bd92, 0x3e7bd5ee, 0xbdb489b2, 0xbea62b1d,
    0xbe877050, 0xbe1f0e16, 0xbdf377a7, 0x3eb650a2,
    0x3e828a94, 0x3df17602, 0x3ec0ed6a, 0xbd86fa48,
    0x3f492776, 0xbe089df8, 0x3ef9bb6f, 0x3ea98f1d,
    0xbebdd119, 0x3f16f27f, 0xbd903242, 0x3ed7d308,
    0xbe217633, 0x3ed0ddef, 0x3e5bf01a, 0x3e0e36f5,
    0x3d927755, 0xbda15276, 0x3e2fe1a6, 0x3ede9906,
    0xbea07946, 0xbf325862, 0x3e2bf47c, 0x3e7042fa,
    0xbdf916a0, 0xbefd280f, 0xbf18cbae, 0xbe7fd3b8
    };

static DSP_STATIC_DATA const uint32_t in_com2[256] = {
    0xbf06178f, 0xbcf81646, 0x3dfd56f1, 0x3d8b675e,
    0x3e3b9e60, 0xbe581221, 0xbe9b2bdf, 0x3e27456a,
    0x3e267c7c, 0x3e4a739e, 0x3e46f38e, 0x3ead0034,
    0x3e9c6fe6, 0xbe85de2a, 0xbe0b6d91, 0x3e15c579,
    0x3e2e2747, 0x3e47f6b7, 0xbf0fef42, 0x3eb89f41,
    0xbebf5073, 0xbe1b76d6, 0xbd143cda, 0x3e0fce30,
    0x3e63f477, 0x3da6b408, 0xbddf20d8, 0x3e212cf8,
    0x3d7ca255, 0x3edeb770, 0xbe42d399, 0x3ebc6d3d,
    0xba159c2d, 0x3dbe1e2f, 0x3e4ae0fe, 0x3ef1b0e2,
    0x3ecd009c, 0x3f0b6939, 0x3e730650, 0xbe349bd9,
    0x3e8784f4, 0xbef694cf, 0x3ef0ee0c, 0xbe3b6ec9,
    0xbeafb317, 0x3dceadfa, 0xbef71828, 0xbeb480ef,
    0x3dcc9b0c, 0xbea38f6b, 0xbeada2ab, 0xbea2589f,
    0x3d8dd61b, 0x3e9b1f61, 0xbe5cae67, 0xbe1b7bf5,
    0xbd53f594, 0xbc02f690, 0x3d1f35bc, 0x3e66a230,
    0xbe4e0c07, 0x3e8b1ea7, 0xbd8abce8, 0x3f2acc63,
    0x3e85f10a, 0xbe3df13b, 0x3e47f9b9, 0xbe7f3538,
    0x3eab8320, 0x3dc6e409, 0xbe1a0c12, 0x3de4dc15,
    0xbd783ef8, 0x3d6bf7a7, 0xbdf01e81, 0xbe06f585,
    0x3dfbc3cb, 0x3e83c76e, 0xbe2334d9, 0xbec04faa,
    0x3df4f6ba, 0xbe9c8939, 0x3eae9480, 0x3f3ea2db,
    0xbea5e7e5, 0x3ce44756, 0x3e7ac681, 0xbb1f3af2,
    0xbe0d9a3b, 0xbec47312, 0x3d1fc34a, 0xbeeb364f,
    0x3c4a5321, 0x3d078790, 0xbed2a3e7, 0xbed2a75b,
    0x3df5aa35, 0x38054956, 0xbed08984, 0xbeaddd16,
    0xbe0f6b3a, 0xbea00acc, 0xbf15c678, 0x3cad77bc,
    0x3e163970, 0x3ed0359e, 0x3eba85da, 0xbdac92a7,
    0x3dcaae9a, 0xbe2e7b0c, 0x3f0910dd, 0xbe7b35ac,
    0x3f23ac86, 0xbe8fd163, 0x3d94c4b4, 0x3ec00630,
    0xbe8b6689, 0x3dd91911, 0xbd2a3f3d, 0x3ee3988d,
    0x3c9c3923, 0x3df44add, 0x3dea8e9a, 0x3d2f765c,
    0xbe71b5c8, 0xbe891f36, 0xbe6d50ff, 0xbf0ff9b0,
    0xbee2bf4f, 0xbee17457, 0x3f09cb91, 0xbe237819,
    0xbe287c67, 0xbe599480, 0x3eaa52c4, 0x3e8a6543,
    0xbeb1c765, 0x3edaa354, 0xbddf782f, 0xbd5f5133,
    0xbf6e1ccc, 0x3ed67bb1, 0x3e9fde5f, 0x3db717f1,
    0x3f086e5b, 0x3d93e022, 0xbde93f0e, 0xbde147c6,
    0xbc3b38b6, 0x3d913c88, 0x3e14d761, 0x3e29b42a,
    0x3ef55fec, 0xbe88a627, 0x3e8455d9, 0xbd65215c,
    0xbf800000, 0xbc5be1eb, 0x3e7363be, 0x3f003121,
    0xbd8d0572, 0x3d68d950, 0xbe91b2b1, 0x3d9ec8ee,
    0x3e434245, 0xbe99c910, 0xbf080f49, 0x3e20c1a7,
    0xbe99b973, 0x3ec03789, 0xbdbe0d65, 0xbe5e2e00,
    0x3ea75ffa, 0x3eb117ff, 0xbd7e5f8c, 0xbf2f6207,
    0x3e50db53, 0x3c93bee8, 0x3e3c3d23, 0x3df003da,
    0xbe46241b, 0xbf40df5b, 0xbcba8789, 0x3e062840,
    0xbd8c3271, 0x3d9db002, 0xbf07a554, 0x3c9a4984,
    0xbe1a0447, 0x3d243d12, 0x3cf2d17f, 0xbdbb7707,
    0x3d50c304, 0x3e0cc6ea, 0xbdf1c6fb, 0x3e08b873,
    0xbdeef5e9, 0xbeb7a6f1, 0x3e763600, 0x3e8b66f2,
    0x3e02e2be, 0xbca3550d, 0xbe8735d2, 0xbe7c4f1f,
    0x3d3a781e, 0xbe445ae0, 0x3ebe8f55, 0x3d92f31e,
    0xbe89d5ef, 0x3e99b057, 0xbdcf9e20, 0xbee579c6,
    0x3ef66b87, 0x3e10450f, 0x3ef3448f, 0xbeaf9f4a,
    0x3f195a82, 0x3db75487, 0xbeda071f, 0x3d2b6496,
    0xbe97d1fa, 0x3e9a49ed, 0xbec10527, 0x3d2b7272,
    0xbe23956f, 0x3e3bec79, 0xbd942185, 0xbdfb24ed,
    0xbdc55b8b, 0x3e287bdd, 0x3f02812f, 0x3dbf0ddc,
    0xbe91ca4f, 0xbe0555e7, 0x3edf7620, 0x3e4411ca,
    0x3ea0a2f0, 0x3eeada8f, 0xbe6e6e56, 0x3eac42a3,
    0xbe3c3f27, 0x3d773f1a, 0x3e87116e, 0x3f21218e,
    0x3c21c417, 0x3f14c6b1, 0x3e9d20c2, 0xbf0f7e9a,
    0xbe841263, 0xbea08fbd, 0xbec7dd6f, 0x3edf4ebc,
    0xbe3bc140, 0xbd27973c, 0xbce5af1b, 0xbe943efb
    };

static DSP_STATIC_DATA const uint32_t in_clip[267] = {
    0xbf666666, 0xbf64aaec, 0xbf62ef72, 0xbf6133f8,
    0xbf5f787e, 0xbf5dbd04, 0xbf5c018a, 0xbf5a4610,
    0xbf588a96, 0xbf56cf1c, 0xbf5513a2, 0xbf535828,
    0xbf519cae, 0xbf4fe134, 0xbf4e25ba, 0xbf4c6a40,
    0xbf4aaec6, 0xbf48f34c, 0xbf4737d2, 0xbf457c58,
    0xbf43c0de, 0xbf420564, 0xbf4049ea, 0xbf3e8e70,
    0xbf3cd2f6, 0xbf3b177c, 0xbf395c02, 0xbf37a088,
    0xbf35e50d, 0xbf342993, 0xbf326e19, 0xbf30b29f,
    0xbf2ef725, 0xbf2d3bab, 0xbf2b8031, 0xbf29c4b7,
    0xbf28093d, 0xbf264dc3, 0xbf249249, 0xbf22d6cf,
    0xbf211b55, 0xbf1f5fdb, 0xbf1da461, 0xbf1be8e7,
    0xbf1a2d6d, 0xbf1871f3, 0xbf16b679, 0xbf14faff,
    0xbf133f85, 0xbf11840b, 0xbf0fc891, 0xbf0e0d17,
    0xbf0c519d, 0xbf0a9623, 0xbf08daa9, 0xbf071f2f,
    0xbf0563b5, 0xbf03a83b, 0xbf01ecc0, 0xbf003146,
    0xbefceb99, 0xbef974a5, 0xbef5fdb1, 0xbef286bd,
    0xbeef0fc9, 0xbeeb98d4, 0xbee821e0, 0xbee4aaec,
    0xbee133f8, 0xbeddbd04, 0xbeda4610, 0xbed6cf1c,
    0xbed35828, 0xbecfe134, 0xbecc6a40, 0xbec8f34c,
    0xbec57c58, 0xbec20564, 0xbebe8e70, 0xbebb177c,
    0xbeb7a088, 0xbeb42993, 0xbeb0b29f, 0xbead3bab,
    0xbea9c4b7, 0xbea64dc3, 0xbea2d6cf, 0xbe9f5fdb,
    0xbe9be8e7, 0xbe9871f3, 0xbe94faff, 0xbe91840b,
    0xbe8e0d17, 0xbe8a9623, 0xbe871f2f, 0xbe83a83b,
    0xbe803146, 0xbe7974a5, 0xbe7286bd, 0xbe6b98d4,
    0xbe64aaec, 0xbe5dbd04, 0xbe56cf1c, 0xbe4fe134,
    0xbe48f34c, 0xbe420564, 0xbe3b177c, 0xbe342993,
    0xbe2d3bab, 0xbe264dc3, 0xbe1f5fdb, 0xbe1871f3,
    0xbe11840b, 0xbe0a9623, 0xbe03a83b, 0xbdf974a5,
    0xbdeb98d4, 0xbdddbd04, 0xbdcfe134, 0xbdc20564,
    0xbdb42993, 0xbda64dc3, 0xbd9871f3, 0xbd8a9623,
    0xbd7974a5, 0xbd5dbd04, 0xbd420564, 0xbd264dc3,
    0xbd0a9623, 0xbcddbd04, 0xbca64dc3, 0xbc5dbd04,
    0xbbddbd04, 0x0, 0x3bddbd04, 0x3c5dbd04,
    0x3ca64dc3, 0x3cddbd04, 0x3d0a9623, 0x3d264dc3,
    0x3d420564, 0x3d5dbd04, 0x3d7974a5, 0x3d8a9623,
    0x3d9871f3, 0x3da64dc3, 0x3db42993, 0x3dc20564,
    0x3dcfe134, 0x3dddbd04, 0x3deb98d4, 0x3df974a5,
    0x3e03a83b, 0x3e0a9623, 0x3e11840b, 0x3e1871f3,
    0x3e1f5fdb, 0x3e264dc3, 0x3e2d3bab, 0x3e342993,
    0x3e3b177c, 0x3e420564, 0x3e48f34c, 0x3e4fe134,
    0x3e56cf1c, 0x3e5dbd04, 0x3e64aaec, 0x3e6b98d4,
    0x3e7286bd, 0x3e7974a5, 0x3e803146, 0x3e83a83b,
    0x3e871f2f, 0x3e8a9623, 0x3e8e0d17, 0x3e91840b,
    0x3e94faff, 0x3e9871f3, 0x3e9be8e7, 0x3e9f5fdb,
    0x3ea2d6cf, 0x3ea64dc3, 0x3ea9c4b7, 0x3ead3bab,
    0x3eb0b29f, 0x3eb42993, 0x3eb7a088, 0x3ebb177c,
    0x3ebe8e70, 0x3ec20564, 0x3ec57c58, 0x3ec8f34c,
    0x3ecc6a40, 0x3ecfe134, 0x3ed35828, 0x3ed6cf1c,
    0x3eda4610, 0x3eddbd04, 0x3ee133f8, 0x3ee4aaec,
    0x3ee821e0, 0x3eeb98d4, 0x3eef0fc9, 0x3ef286bd,
    0x3ef5fdb1, 0x3ef974a5, 0x3efceb99, 0x3f003146,
    0x3f01ecc0, 0x3f03a83b, 0x3f0563b5, 0x3f071f2f,
    0x3f08daa9, 0x3f0a9623, 0x3f0c519d, 0x3f0e0d17,
    0x3f0fc891, 0x3f11840b, 0x3f133f85, 0x3f14faff,
    0x3f16b679, 0x3f1871f3, 0x3f1a2d6d, 0x3f1be8e7,
    0x3f1da461, 0x3f1f5fdb, 0x3f211b55, 0x3f22d6cf,
    0x3f249249, 0x3f264dc3, 0x3f28093d, 0x3f29c4b7,
    0x3f2b8031, 0x3f2d3bab, 0x3f2ef725, 0x3f30b29f,
    0x3f326e19, 0x3f342993, 0x3f35e50d, 0x3f37a088,
    0x3f395c02, 0x3f3b177c, 0x3f3cd2f6, 0x3f3e8e70,
    0x3f4049ea, 0x3f420564, 0x3f43c0de, 0x3f457c58,
    0x3f4737d2, 0x3f48f34c, 0x3f4aaec6, 0x3f4c6a40,
    0x3f4e25ba, 0x3f4fe134, 0x3f519cae, 0x3f535828,
    0x3f5513a2, 0x3f56cf1c, 0x3f588a96, 0x3f5a4610,
    0x3f5c018a, 0x3f5dbd04, 0x3f5f787e, 0x3f6133f8,
    0x3f62ef72, 0x3f64aaec, 0x3f666666
    };

static const uint32_t ref_add[256] = {
    0xbd407442, 0x3e6e5862, 0xbd7ff33a, 0x3e5e1c2b,
    0x3e9e8312, 0xbf2cbe4e, 0xbf1b92da, 0x3e237960,
    0x3d15447d, 0x3e0489fe, 0xbc7cefa6, 0x3f015dee,
    0x3eba1743, 0x3d7efb40, 0xbecb20e5, 0x3ee0c1cc,
    0x3e30b219, 0x3e24fc7b, 0xbf0846fb, 0x3f03c580,
    0xbeea5f18, 0xbe68d308, 0x3e54a7b5, 0x3e54d97f,
    0x3f8341a9, 0x3e318e70, 0xbcd098c3, 0x3f299b37,
    0xbea20fe0, 0xbd393407, 0xbe58d046, 0x3f08c0a5,
    0x3e90f941, 0x3efcacd9, 0xbdc537c3, 0x3e518fb5,
    0x3f5f388d, 0x3f394584, 0x3ee7d1e8, 0xbf2f619b,
    0x3dd88c44, 0xbfb41fd5, 0x3f6a6127, 0xbe5a9f1c,
    0xbf29de80, 0x3ef7a079, 0xbf10e8b9, 0xbe0ec3b8,
    0x3ef9eb4f, 0xbe6e199f, 0xbec8f182, 0xbf29f9ac,
    0x3e755bed, 0x3e113306, 0xbe614078, 0x3d90d89c,
    0x3e582561, 0x3f3aeb48, 0x3e5c468c, 0x3cf74822,
    0xbe2c6c2e, 0xbe29f708, 0xbe95a06b, 0x3e9673bf,
    0x3e3f9f09, 0xbe604ca4, 0x3f0091db, 0xbe478081,
    0xbdae64c7, 0x3d0df6ad, 0xbf2e5038, 0xbec2d7be,
    0xbeef7d76, 0x3d130ec9, 0xbee8f42a, 0xbef4426a,
    0xbe250f8c, 0x3f31d9b5, 0x3ea88db7, 0xbeffd187,
    0x3de6e32a, 0x3dd8cb71, 0xbd877822, 0x3ee8f435,
    0xbe1ad7d5, 0xbe6a914e, 0xbe1471ba, 0xbe02deb2,
    0x3e48cf24, 0xbe14db2e, 0x3e568c7e, 0xbef1945c,
    0x3ecd83b5, 0x3f2d4aca, 0xbd8eb334, 0xbf12d4e1,
    0x3eecae31, 0x3d8c62da, 0xbf1f9d41, 0x3e2f3814,
    0x3d20d984, 0xbef88395, 0xbf5a8f8e, 0x3e712791,
    0x3e2fe7f0, 0x3e008eb3, 0xbf22bd13, 0x3e062b1a,
    0x3eef19fa, 0xbea7f30d, 0x3f84bf06, 0x3e687b5a,
    0x3f3e7a9a, 0xbe23f2dc, 0xbb8dcf5c, 0x3f3ba23e,
    0xbee3570a, 0xbe85e478, 0xbe803143, 0x3f4207db,
    0xbcaf2159, 0xbe995869, 0x3f0303bd, 0xbe8a8e7e,
    0xbeb50fb5, 0x3eb8b222, 0xbe4ba2ea, 0xbecf0263,
    0xbf0e6b1f, 0x3d3391e4, 0x3eab6df6, 0xbf1c4e44,
    0xbecb1856, 0xbee5ccfc, 0x3e0f14aa, 0x3e94f515,
    0xbf235044, 0x3efb8fc0, 0xbdaf21eb, 0xbf4bfa33,
    0xbf8cbe9c, 0x3ea63f3b, 0x3f1a73ae, 0x3efd0a86,
    0x3f090441, 0x3e013b8d, 0xbe6696e9, 0xbeab515f,
    0x3d08c021, 0xbeacace5, 0x3e1782ee, 0x3f015ce5,
    0x3ec5e43a, 0xbf38c0c7, 0x3f0370b4, 0x3d717d19,
    0xbf069e03, 0xbe16bb35, 0x3e42a140, 0x3ec707e7,
    0x3c9f07ba, 0xbe9bb4c8, 0xbd985638, 0xbeb03f16,
    0x3cba6c6b, 0xbec2419d, 0xbd774b78, 0x3eb8be9d,
    0xbf35d619, 0x3d9cd3c4, 0xbee816d6, 0x3eecd067,
    0x3ea337f1, 0x3f0af39c, 0xbe167b5a, 0xbf28e8f8,
    0xbd2e3a53, 0x3f42852f, 0x3ea86100, 0x3f2aa419,
    0xbe4df8be, 0xbf325ea3, 0xbe01d8be, 0x3ce95415,
    0xbe0173d0, 0x3ecfffd4, 0xbe52a7c0, 0x3b86fb33,
    0x3e62aa0b, 0xbde359f7, 0xbe58f634, 0xbc004306,
    0xbe974c5a, 0xbe49b934, 0x3e389a41, 0xbef2160b,
    0xbeb0d0f6, 0xbf3a4fbf, 0x3efd0d9f, 0x3f18c4f1,
    0x3eb1819e, 0xbe9b47f8, 0x3ab0ab02, 0xbec9e097,
    0x3f0ed7ad, 0xbea8e265, 0x3ea76e74, 0xbe4cee8b,
    0xbd09eac7, 0x3da7bf90, 0x3d85f78f, 0xbed40782,
    0x3f58ac3f, 0xbe82ce37, 0x3ed362ba, 0xbe2c8177,
    0x3eeb4ede, 0x3df9a084, 0xbf4c1aa0, 0x3e51d26b,
    0xbe3dc52b, 0x3f0c1a72, 0xbeee2794, 0xbe90bcce,
    0xbed93b08, 0x3ce6f317, 0xbe43cc96, 0x3e6f0ecd,
    0x3e226763, 0x3e909b6f, 0x3f62f7e5, 0x3ce04e50,
    0x3f00424f, 0xbe86f9f0, 0x3f6c98c7, 0x3f05cc01,
    0xbd697145, 0x3f862fe3, 0xbe9b43bb, 0x3f420ad5,
    0xbeaedaad, 0x3eefc5d2, 0x3ef5097b, 0x3f44af4b,
    0x3da6afd8, 0x3f009c62, 0x3ef51195, 0xbe00c85d,
    0xbf1245d4, 0xbf815020, 0xbe63c663, 0x3f2bb81d,
    0xbe9c2648, 0xbf090d7b, 0xbf1ff927, 0xbf0a146c
    };

static const uint32_t ref_sub[256] = {
    0x3f8013ed, 0x3e962efa, 0xbe9ea9e0, 0x3da5699a,
    0xbd68da70, 0xbe816a7c, 0xbacdf50a, 0xbe2b1173,
    0xbe93d3ec, 0xbe882ea0, 0xbecedb0b, 0xbe2e8915,
    0xbe7d9112, 0x3f15cdde, 0xbdfecd4e, 0x3e15f8a4,
    0xbe2b9c76, 0xbe6af0f3, 0x3f179788, 0xbe536703,
    0x3e9441cd, 0x3d9c354a, 0x3e8f6311, 0xbd9585c3,
    0x3f148917, 0x3c2da67f, 0x3e450dbf, 0x3eb20976,
    0xbee13875, 0xbf6a4ab0, 0x3e2cd6ec, 0xbe4eb260,
    0x3e918edd, 0x3e9d9dc2, 0xbefc2eef, 0xbf3d4cf5,
    0x3d91bf81, 0xbebb19dc, 0xbcb34677, 0xbeaa275d,
    0xbed8e6d6, 0xbee355b5, 0xbcd19c9e, 0x3e1c3e77,
    0x3cba92d2, 0x3e90497c, 0x3ecc5edd, 0x3f10d001,
    0x3e939dc9, 0x3ed01206, 0x3e9253d4, 0xbcf4218f,
    0x3dcf0ba5, 0xbeeda53f, 0x3e581c56, 0x3ebfb21b,
    0x3ea11015, 0x3f3f02fc, 0x3e0cabae, 0xbed72dad,
    0x3e6fabe0, 0xbf359c69, 0xbe2083ee, 0xbf852f73,
    0xbeac128f, 0x3e1b95d2, 0x3de4a7f5, 0x3e9b74f7,
    0xbf414fb9, 0xbe23665e, 0xbec2945e, 0xbf1aa2e5,
    0xbeb16db8, 0xbda27043, 0xbe61c9d4, 0xbe5a99ca,
    0xbed069ac, 0x3e38491a, 0x3f25e148, 0x3e80cdcc,
    0xbe018525, 0x3f37a2a7, 0xbf3f8385, 0xbf8465cd,
    0x3efe63df, 0xbe91d192, 0xbf227faf, 0xbdfbc9b5,
    0x3ef201cd, 0x3f1f3c46, 0x3e06aad9, 0x3ee4d843,
    0x3ec0de83, 0x3f1c59d8, 0x3f40cd80, 0x3e7f49e6,
    0x3e63b22e, 0x3d8c4187, 0x3e43b10c, 0x3f59ab1c,
    0x3ea3866b, 0x3e0f2404, 0x3ea1fac3, 0x3e45c9a2,
    0xbdf915e0, 0xbf3011f2, 0xbfaea177, 0x3e995ee1,
    0x3e89c2ad, 0x3c50fff6, 0xbd0a3ad1, 0x3f37b9ac,
    0xbf08de72, 0x3ecda957, 0xbe19332e, 0xbc8c7e35,
    0x3dcdd81e, 0xbef27101, 0xbe2b42e8, 0xbe0642c7,
    0xbd73c9cf, 0xbf09beec, 0x3e90c02e, 0xbeb66c15,
    0x3df2984f, 0x3f657847, 0x3e877f8a, 0x3f38722f,
    0x3ea8a861, 0x3f6cad76, 0xbf3de027, 0xbe95246f,
    0xbd8a6fb8, 0xbcc387bf, 0xbf068d99, 0xbe7faae2,
    0x3d677212, 0xbeb9b6e8, 0x3e07e739, 0xbf30100d,
    0x3f42bc62, 0xbf035c14, 0xbcad5612, 0x3ea17e8d,
    0xbf07d876, 0xbc9524a9, 0x3b2a0931, 0xbdeab5f3,
    0x3d665c7c, 0xbef54b29, 0xbe122bd4, 0x3e320b40,
    0xbf126dce, 0xbe406a7f, 0xbb652497, 0x3e2eeff4,
    0x3fbcb0fe, 0xbdf67def, 0xbe92131e, 0xbf1cde4e,
    0x3e20e669, 0xbed5eb1c, 0x3efd4fd5, 0xbeffa38e,
    0xbeb79b7e, 0x3e62a105, 0x3f8054ed, 0x3d3fe7ae,
    0xbde0e52f, 0xbf2c9d11, 0xbe891024, 0x3f657f34,
    0xbeab8802, 0xbe18918b, 0xbcba5ca3, 0x3f35db15,
    0xbee6a29e, 0x3f394940, 0xbd1ee11b, 0x3edd4645,
    0x3e3e4f78, 0x3f4f6012, 0xbda66db7, 0xbe6f25fd,
    0x3c2bea0d, 0x3e8127d3, 0x3f5aa0b8, 0xbd096a1d,
    0x3f05aca6, 0xbe43cb84, 0xbe8ad54a, 0x3e3372d7,
    0xbecb7d1b, 0xbef1a384, 0x3ed5309e, 0xbf3d673f,
    0xbde55807, 0xbc2a3383, 0x3c5af3ee, 0x3d55dffc,
    0x3dba7b80, 0xbe86dd56, 0x3f078e28, 0x3dc9ba21,
    0x3eef1153, 0x3d5bc3d7, 0xbed5b035, 0xbeaff0d5,
    0x3f013743, 0xbf04b865, 0x3e894cf4, 0x3ef6ec09,
    0xbdedfa3e, 0xbf0989a3, 0xbf099332, 0x3f047eec,
    0xbf3d0d95, 0xbd6a1114, 0x3d5ec7f0, 0x3df84041,
    0x3ed0c15f, 0xbd62f7ac, 0x3e93e2bb, 0xbebb996b,
    0xbdd69661, 0xbead7d47, 0xbd3eac45, 0x3ef519dd,
    0x3eb3e177, 0xbd3f036f, 0xbe0829e9, 0xbe230412,
    0x3f89064f, 0xbb52044e, 0x3d522a78, 0x3e0f0c70,
    0xbf2f3a04, 0x3e0614df, 0x3e265535, 0x3dae4192,
    0x3cd6479e, 0x3eb1f60c, 0xbd48cb07, 0xbefb27a1,
    0x3d7c7da5, 0xbf28f100, 0xbe0a5fdd, 0x3f7ecb1d,
    0xbd63371a, 0xbec42106, 0x3f0eebd7, 0xbe4e5a7f,
    0x3d7cd7c0, 0xbee83527, 0xbf119e35, 0x3d22a8f9
    };

static const uint32_t ref_mult[256] = {
    0xbe7fbf0d, 0xbc0283e0, 0xbcbcad0e, 0x3c25fc8b,
    0x3cbdadb5, 0x3dc86a4f, 0x3dbd15fd, 0xba1ec87c,
    0xbca801da, 0xbc5d27b0, 0xbd26e6c7, 0x3d67bf8a,
    0x3c90f797, 0xbdad56a5, 0x3d11536f, 0x3d2f5cdf,
    0x39dd5f38, 0xbbda91d2, 0xbc89c4eb, 0x3d63aa29,
    0x3d00b5d5, 0x3c3beaec, 0xbc10991c, 0x3c1b23b4,
    0x3e370244, 0x3bf560f8, 0xbc150647, 0x3da2d405,
    0xbcbf1864, 0xbe55e6a4, 0x3b85dd3d, 0x3d7a7c1d,
    0xb929ca78, 0x3d1859df, 0xbd6eed81, 0xbe0141f9,
    0x3e4157a7, 0x3dc7cbb3, 0x3d516ef2, 0x3db7c108,
    0xbd2c538a, 0x3ee43d6b, 0x3e566ad7, 0x3bb6ae5d,
    0x3de12b11, 0x3d1e344e, 0x3d24f33d, 0xbd99e19e,
    0x3d1edd02, 0xbce380c4, 0x3c942d0c, 0x3de142c8,
    0x3c414c20, 0xbd4804ab, 0x3a7c28f5, 0xbd0a6bfb,
    0xbc5ed5d7, 0xbbc156fe, 0x3be07a35, 0xbd33eee5,
    0xbbd881a6, 0xbdf39215, 0x3c792b56, 0xbe7f0e64,
    0xbc9f9a8b, 0x3bcbeee2, 0x3d7584ff, 0xbc5e225b,
    0xbe101e19, 0xbbc6bfd5, 0x3da36fb0, 0xbd6155d8,
    0x3cca2530, 0xbaa3e78d, 0x3d22325c, 0x3d3a6419,
    0xbd0f10a0, 0x3de68865, 0xbd9f7b32, 0x3d3ed4a5,
    0xba578359, 0xbe00db93, 0xbe0e26c4, 0xbe5ce5af,
    0xbd65603d, 0xbbea9cab, 0xbdc3893c, 0x399fb494,
    0xbd3d6653, 0xbdbb4616, 0x3bd9efc5, 0x3bbb35e3,
    0x3b9d6d6e, 0x3cae8460, 0xbe0ff6b8, 0x3d889c7a,
    0x3d283043, 0x36121dcc, 0x3db45687, 0xbe3194ac,
    0xbccdc060, 0x3d5d3ce5, 0x3e20f977, 0x3b94b726,
    0x3b712023, 0xbdea1f7b, 0xbeba85da, 0xbc949c84,
    0x3d152f92, 0x3cdc08b2, 0x3e8985c8, 0xbded51fd,
    0x3d891a38, 0xbd0af8db, 0xbbb73528, 0x3e097327,
    0x3d3f8b3c, 0xbd1f92a6, 0x3c0e32c0, 0x3e0ea949,
    0xba4a3517, 0xbd4c9ccf, 0x3d3a5a8c, 0xbc5bffb1,
    0x3ce361e2, 0xbe2c6044, 0xbbf9c68e, 0xbdb6163e,
    0x3d4dce9c, 0xbe5a5251, 0xbde04371, 0x3d936d3e,
    0x3d1c71d0, 0x3d4db307, 0xbd837213, 0x3bb6b692,
    0x3dcebc22, 0x3ce0f2a9, 0xbb28c758, 0x3d25c2bc,
    0x3e216211, 0xbd21a766, 0x3dba2415, 0x3d143d60,
    0x3a9fc551, 0x3b7f860d, 0x3c4fac75, 0x3cca657b,
    0xba063d9d, 0xbced2054, 0x39c6b638, 0x3d668618,
    0xbd360cad, 0x3df89760, 0x3d86f77a, 0xbbd29c89,
    0xbef2c3f9, 0x3aeb52cc, 0xbc396e73, 0xbd65c178,
    0xbbc72b51, 0xbca81955, 0xbd74fc7b, 0xbd05f06e,
    0xbd0327eb, 0x3cc27eac, 0xbe8032a1, 0x3d031321,
    0x3dfc2455, 0xbde5c647, 0x3d09071f, 0xbe16f898,
    0xbb2deb1d, 0x3d8b7973, 0x3bacac3d, 0xbc8de765,
    0xbd4dee4d, 0x3c5b32c5, 0x3cda6a14, 0x3d83db82,
    0x3ac1f21a, 0xbd2ed310, 0x3b1b3e23, 0xbc5c154c,
    0x3b8204f2, 0x3ccfad20, 0xbe2fe0a5, 0xb9914c1f,
    0xbd65073a, 0xbbc68b05, 0xbbea9461, 0xbbfb1312,
    0xbc90a8fa, 0xbd3c5830, 0xbd104269, 0xbda5cc62,
    0x3cda9126, 0x3e0790e8, 0x3d79f51d, 0x3db4ef90,
    0x3ce52e05, 0x3bb91e25, 0xbd8f8e3c, 0x3d154315,
    0x3cbf1d1b, 0x3cd8ee94, 0xbc89bace, 0xbc9fcfc5,
    0xbd81dce0, 0xbd862dff, 0xbc8a8383, 0xbc7a3833,
    0x3e33ee39, 0xbd64bc55, 0xbcf25f38, 0xbd753cfa,
    0xbdab152b, 0x3b3de8d7, 0x3e21f892, 0x3bdf943a,
    0xbd070f9d, 0x3d97c76a, 0x3d081f71, 0xbc5e922a,
    0x3d2d1724, 0xbce9846c, 0x3c0ce10d, 0xbd32db5b,
    0xbcc946a3, 0x3c9eea45, 0x3e44b3d7, 0xbbc97815,
    0xbe651ca2, 0x3c8e4fd3, 0x3e59fd81, 0x3d81dd5a,
    0xbdee36ff, 0x3e8a7a87, 0x3c864cdf, 0x3e1139f7,
    0x3ced7545, 0x3cc9b99e, 0x3d68152e, 0x3db30667,
    0x3a391a7a, 0xbd3b81c3, 0x3d57e7c8, 0xbe798b1f,
    0x3da5941c, 0x3e5fb6c0, 0xbd863fc9, 0x3dd1943d,
    0x3cb6af8f, 0x3ca5bab0, 0x3c8916b6, 0x3d942557
    };

static const uint32_t ref_negate[256] = {
    0xbef42097, 0xbe86ad95, 0x3e3ea847, 0xbe18687c,
    0xbe0167c4, 0x3eed738c, 0x3e9bf9d4, 0x3b730272,
    0x3e012b5c, 0x3d8bd341, 0x3e56c288, 0xbe2b7752,
    0xbd6d3ae8, 0xbea5bd92, 0x3e856a1c, 0xbe95df0f,
    0xbb22b472, 0x3d0be8f1, 0xbcf508cb, 0xbe1dd77f,
    0x3dac3a95, 0x3d9ab863, 0xbe79b6ec, 0xbd8a169d,
    0xbf4d8634, 0xbdbc68d8, 0xbdaafaa7, 0xbf014ff9,
    0x3ec1a42b, 0x3ef5ddf1, 0x3cafe569, 0xbe2a281a,
    0xbe91440f, 0xbecd254e, 0x3e96be70, 0x3e88e908,
    0xbef1707d, 0xbe37712d, 0xbe5c9d81, 0x3f023aa5,
    0x3e22c3c5, 0x3f6cf542, 0xbee3d442, 0x3cf98294,
    0x3ea409ea, 0xbec3f4fa, 0x3daae52b, 0xbe5a3e26,
    0xbec6c48c, 0xbdb20a6e, 0x3d5a76b9, 0x3eb19ab8,
    0xbe2e70e0, 0x3e250bbc, 0x3b924224, 0xbe63e842,
    0xbe869163, 0xbf3cf722, 0xbe34791d, 0x3e47b92b,
    0xbd067f62, 0x3ee01a2b, 0x3e65e261, 0x3ebf2507,
    0x3d988616, 0x3d096da3, 0xbe9d26da, 0xbd5ed2dc,
    0x3ed71c52, 0x3d7fd166, 0x3f07cd34, 0x3efc0ec4,
    0x3ed07597, 0x3cb1d1bc, 0x3eacec8a, 0x3eb0c7a7,
    0x3e9178b9, 0xbedfebfc, 0xbefa2823, 0x3dfe0776,
    0x3be138f4, 0xbed2bc15, 0x3ed07289, 0x3e945180,
    0xbe30f7f5, 0x3e838d1c, 0x3ec79c1e, 0x3e0061c6,
    0xbeab34af, 0xbe740af6, 0xbe2e9bac, 0x3c4bc189,
    0xbec7311c, 0xbf24d251, 0xbeaef71a, 0x3e2604cf,
    0xbeaf43a4, 0xbd8c5231, 0x3e5d61fb, 0xbf02bc90,
    0xbe37a19b, 0x3e30f194, 0x3e89922c, 0xbe5b789a,
    0xbccd7401, 0x3e8fee45, 0x3f800000, 0xbe5c746d,
    0xbebc6e53, 0x3e216b0d, 0xbf006d30, 0xbef1d883,
    0xbdd6709e, 0xbdf75fd2, 0x3d9da1a9, 0xbeb73e4d,
    0x3e2fe102, 0x3ebc2abc, 0x3e55d2b7, 0xbea0772a,
    0x3d25ad3e, 0x3ed66b20, 0xbecb63d4, 0x3ea07d49,
    0x3df0d341, 0xbf20e8ac, 0xbd06b855, 0xbe21e1fa,
    0x3de85bb8, 0xbef7e694, 0x3e505258, 0x3ee6e07b,
    0x3e6db444, 0x3e720578, 0x3e4590de, 0xbca8fd1c,
    0x3e94d923, 0xbd83b1af, 0xbcc1590d, 0x3f3e0520,
    0x3e2d81ab, 0x3dc0f1d9, 0xbe9508fe, 0xbecf4489,
    0xbb15e5b9, 0xbd5d2df0, 0x3de3eec5, 0x3e65fedc,
    0xbd378e4e, 0x3ed0fc07, 0xbb2ae32e, 0xbeaddfb5,
    0x3dbdeec5, 0x3ee8db66, 0xbe828b90, 0xbdeb4f3a,
    0xbef2c3f9, 0x3e08fd16, 0x3d4309f7, 0x3de5696b,
    0xbdb4c760, 0x3eb8cff2, 0xbe573a47, 0x3ed7f152,
    0x3e2bf4b7, 0x3da1e235, 0xbef13523, 0xbe50bb92,
    0x3ed1f2be, 0x3e990298, 0x3eb8937d, 0xbf2df3b4,
    0x3c050110, 0xbe499e73, 0x3dadc6ef, 0xbccf21c4,
    0x3e7c69e8, 0xbf3de737, 0xbe1484dd, 0xbf0ca39e,
    0x3bfa9460, 0xbd680b7a, 0x3dd50f99, 0x3dd1fb7b,
    0x3d6d6a5e, 0xbea893d4, 0xbea5f6c8, 0x3c71156e,
    0xbebe5729, 0x3e1abc40, 0x3e775064, 0xbdab6ea7,
    0x3eb164ba, 0x3eab400f, 0xbe98bedf, 0x3f1b3922,
    0x3e6a26f8, 0x3ebcf88d, 0xbe81f29f, 0xbea622f1,
    0xbe60207e, 0x3e9112a7, 0xbe87e67d, 0x3e17720f,
    0xbf03302b, 0x3e0d69ea, 0x3d390706, 0x3e8b340d,
    0xbe71312d, 0x3e5f80e7, 0xbe2acad8, 0xbd0b921f,
    0xbebaecf7, 0x3ecaf0bf, 0x3d7f0ea8, 0xbe32bd1c,
    0x3e0ecc4c, 0xbd0497fa, 0x3ebe2e21, 0xbe26f946,
    0xbde3bd92, 0xbe7bd5ee, 0x3db489b2, 0x3ea62b1d,
    0x3e877050, 0x3e1f0e16, 0x3df377a7, 0xbeb650a2,
    0xbe828a94, 0xbdf17602, 0xbec0ed6a, 0x3d86fa48,
    0xbf492776, 0x3e089df8, 0xbef9bb6f, 0xbea98f1d,
    0x3ebdd119, 0xbf16f27f, 0x3d903242, 0xbed7d308,
    0x3e217633, 0xbed0ddef, 0xbe5bf01a, 0xbe0e36f5,
    0xbd927755, 0x3da15276, 0xbe2fe1a6, 0xbede9906,
    0x3ea07946, 0x3f325862, 0xbe2bf47c, 0xbe7042fa,
    0x3df916a0, 0x3efd280f, 0x3f18cbae, 0x3e7fd3b8
    };

static const uint32_t ref_offset[256] = {
    0x3f7a104b, 0x3f4356cb, 0x3ea0abdd, 0x3f261a1f,
    0x3f2059f1, 0x3d14639f, 0x3e480c57, 0x3efe19fb,
    0x3ebf6a52, 0x3edd0b30, 0x3e949ebc, 0x3f2addd5,
    0x3f0ed3ae, 0x3f52dec9, 0x3e752bc7, 0x3f4aef87,
    0x3f00a2b4, 0x3eee82e2, 0x3f07a846, 0x3f2775e0,
    0x3ed4f15b, 0x3ed951e7, 0x3f3e6dbb, 0x3f1142d4,
    0x3fa6c31a, 0x3f178d1b, 0x3f155f55, 0x3f80a7fd,
    0x3df96f55, 0x3ca220f4, 0x3ef501a9, 0x3f2a8a06,
    0x3f48a208, 0x3f6692a7, 0x3e528321, 0x3e6e2df1,
    0x3f78b83e, 0x3f2ddc4b, 0x3f372760, 0xbc0ea93c,
    0x3eae9e1d, 0xbed9ea84, 0x3f71ea21, 0x3ef067d7,
    0x3e37ec2c, 0x3f61fa7d, 0x3ed546b5, 0x3f368f89,
    0x3f636246, 0x3f16414e, 0x3ee4b129, 0x3e1cca90,
    0x3f2b9c38, 0x3ead7a22, 0x3efdb6f7, 0x3f38fa11,
    0x3f4348b2, 0x3f9e7b91, 0x3f2d1e47, 0x3e9c236a,
    0x3f0867f6, 0x3d7f2ea7, 0x3e8d0ecf, 0x3e01b5f2,
    0x3ed9de7b, 0x3eeed24c, 0x3f4e936d, 0x3f0ded2e,
    0x3da38eb9, 0x3ee005d3, 0xbcf9a672, 0x3bfc4f15,
    0x3dbe29a5, 0x3ef4e2e4, 0x3e2626ec, 0x3e1e70b1,
    0x3e5d0e8e, 0x3f6ff5fe, 0x3f7d1412, 0x3ec07e23,
    0x3efc7b1c, 0x3f695e0b, 0x3dbe35dd, 0x3e575cff,
    0x3f2c3dfd, 0x3e78e5c7, 0x3de18f89, 0x3ebfcf1d,
    0x3f559a58, 0x3f3d02bd, 0x3f2ba6eb, 0x3ef9a1f4,
    0x3f63988e, 0x3f926929, 0x3f577b8d, 0x3eacfd99,
    0x3f57a1d2, 0x3f118a46, 0x3e914f02, 0x3f815e48,
    0x3f2de867, 0x3ea78736, 0x3e6cdba7, 0x3f36de26,
    0x3f066ba0, 0x3e602376, 0xbf000000, 0x3f371d1b,
    0x3f5e372a, 0x3eaf4a7a, 0x3f803698, 0x3f78ec41,
    0x3f1ace14, 0x3f1eebfa, 0x3ed89796, 0x3f5b9f26,
    0x3ea80f7f, 0x3e07aa87, 0x3e9516a4, 0x3f503b95,
    0x3eeb4a58, 0x3da6537f, 0x3f65b1ea, 0x3e3f056e,
    0x3ec3cb30, 0x3f907456, 0x3f086b85, 0x3f28787f,
    0x3ec5e912, 0x3f7bf34a, 0x3e97d6d4, 0x3d48fc26,
    0x3e8925de, 0x3e86fd44, 0x3e9d3791, 0x3f0547e9,
    0x3e564dba, 0x3f107636, 0x3f060ac8, 0xbe78147f,
    0x3ea93f2b, 0x3ecfc38a, 0x3f4a847f, 0x3f67a245,
    0x3f0095e6, 0x3f0dd2df, 0x3ec7044f, 0x3e8d0092,
    0x3f0b78e5, 0x3dbc0fe4, 0x3f00aae3, 0x3f56efda,
    0x3ed0844f, 0x3d3924cd, 0x3f4145c8, 0x3f1d69e7,
    0x3f7961fd, 0x3ebb8175, 0x3ee79ec1, 0x3ec6a5a5,
    0x3f1698ec, 0x3e0e601c, 0x3f35ce92, 0x3da03ab8,
    0x3eaa05a4, 0x3ed78773, 0x3f789a91, 0x3f342ee5,
    0x3db83506, 0x3e4dfad0, 0x3e0ed906, 0x3f96f9da,
    0x3efbd7f8, 0x3f32679d, 0x3ed48e44, 0x3f06790e,
    0x3e81cb0c, 0x3f9ef39c, 0x3f252137, 0x3f8651cf,
    0x3efc15ae, 0x3f0e80b8, 0x3ecabc1a, 0x3ecb8121,
    0x3ee252b4, 0x3f5449ea, 0x3f52fb64, 0x3ef87755,
    0x3f5f2b95, 0x3eb2a1e0, 0x3e8457ce, 0x3f156dd5,
    0x3e1d368b, 0x3e297fe2, 0x3f4c5f70, 0xbdd9c912,
    0x3e8aec84, 0x3e060ee6, 0x3f40f950, 0x3f531179,
    0x3f38081f, 0x3e5ddab2, 0x3f43f33f, 0x3eb446f9,
    0x3f819816, 0x3eb94b0b, 0x3ee8df1f, 0x3e6997e6,
    0x3f3c4c4b, 0x3e903f8d, 0x3f2ab2b6, 0x3f08b922,
    0x3f5d767c, 0x3dd43d04, 0x3ee01e2b, 0x3f2caf47,
    0x3eb899da, 0x3f084980, 0x3e03a3bf, 0x3f29be51,
    0x3f1c77b2, 0x3f3ef57c, 0x3ed2dd93, 0x3e33a9c7,
    0x3e711f60, 0x3eb078f5, 0x3ec32216, 0x3f5b2851,
    0x3f41454a, 0x3f1e2ec0, 0x3f6076b5, 0x3ede416e,
    0x3fa493bb, 0x3ebbb104, 0x3f7cddb7, 0x3f54c78e,
    0x3e045dcf, 0x3f8b7940, 0x3edbf36f, 0x3f6be984,
    0x3eaf44e6, 0x3f686ef8, 0x3f36fc07, 0x3f238dbd,
    0x3f124eeb, 0x3ed7ab63, 0x3f2bf86a, 0x3f6f4c83,
    0x3e3f0d75, 0xbe496187, 0x3f2afd1f, 0x3f3c10be,
    0x3ec1ba58, 0x3bb5fc4e, 0xbdc65d6f, 0x3e801624
    };

static const uint32_t ref_scale[256] = {
    0x3e742097, 0x3e06ad95, 0xbdbea847, 0x3d98687c,
    0x3d8167c4, 0xbe6d738c, 0xbe1bf9d4, 0xbaf30272,
    0xbd812b5c, 0xbd0bd341, 0xbdd6c288, 0x3dab7752,
    0x3ced3ae8, 0x3e25bd92, 0xbe056a1c, 0x3e15df0f,
    0x3aa2b472, 0xbc8be8f1, 0x3c7508cb, 0x3d9dd77f,
    0xbd2c3a95, 0xbd1ab863, 0x3df9b6ec, 0x3d0a169d,
    0x3ecd8634, 0x3d3c68d8, 0x3d2afaa7, 0x3e814ff9,
    0xbe41a42b, 0xbe75ddf1, 0xbc2fe569, 0x3daa281a,
    0x3e11440f, 0x3e4d254e, 0xbe16be70, 0xbe08e908,
    0x3e71707d, 0x3db7712d, 0x3ddc9d81, 0xbe823aa5,
    0xbda2c3c5, 0xbeecf542, 0x3e63d442, 0xbc798294,
    0xbe2409ea, 0x3e43f4fa, 0xbd2ae52b, 0x3dda3e26,
    0x3e46c48c, 0x3d320a6e, 0xbcda76b9, 0xbe319ab8,
    0x3dae70e0, 0xbda50bbc, 0xbb124224, 0x3de3e842,
    0x3e069163, 0x3ebcf722, 0x3db4791d, 0xbdc7b92b,
    0x3c867f62, 0xbe601a2b, 0xbde5e261, 0xbe3f2507,
    0xbd188616, 0xbc896da3, 0x3e1d26da, 0x3cded2dc,
    0xbe571c52, 0xbcffd166, 0xbe87cd34, 0xbe7c0ec4,
    0xbe507597, 0xbc31d1bc, 0xbe2cec8a, 0xbe30c7a7,
    0xbe1178b9, 0x3e5febfc, 0x3e7a2823, 0xbd7e0776,
    0xbb6138f4, 0x3e52bc15, 0xbe507289, 0xbe145180,
    0x3db0f7f5, 0xbe038d1c, 0xbe479c1e, 0xbd8061c6,
    0x3e2b34af, 0x3df40af6, 0x3dae9bac, 0xbbcbc189,
    0x3e47311c, 0x3ea4d251, 0x3e2ef71a, 0xbda604cf,
    0x3e2f43a4, 0x3d0c5231, 0xbddd61fb, 0x3e82bc90,
    0x3db7a19b, 0xbdb0f194, 0xbe09922c, 0x3ddb789a,
    0x3c4d7401, 0xbe0fee45, 0xbf000000, 0x3ddc746d,
    0x3e3c6e53, 0xbda16b0d, 0x3e806d30, 0x3e71d883,
    0x3d56709e, 0x3d775fd2, 0xbd1da1a9, 0x3e373e4d,
    0xbdafe102, 0xbe3c2abc, 0xbdd5d2b7, 0x3e20772a,
    0xbca5ad3e, 0xbe566b20, 0x3e4b63d4, 0xbe207d49,
    0xbd70d341, 0x3ea0e8ac, 0x3c86b855, 0x3da1e1fa,
    0xbd685bb8, 0x3e77e694, 0xbdd05258, 0xbe66e07b,
    0xbdedb444, 0xbdf20578, 0xbdc590de, 0x3c28fd1c,
    0xbe14d923, 0x3d03b1af, 0x3c41590d, 0xbebe0520,
    0xbdad81ab, 0xbd40f1d9, 0x3e1508fe, 0x3e4f4489,
    0x3a95e5b9, 0x3cdd2df0, 0xbd63eec5, 0xbde5fedc,
    0x3cb78e4e, 0xbe50fc07, 0x3aaae32e, 0x3e2ddfb5,
    0xbd3deec5, 0xbe68db66, 0x3e028b90, 0x3d6b4f3a,
    0x3e72c3f9, 0xbd88fd16, 0xbcc309f7, 0xbd65696b,
    0x3d34c760, 0xbe38cff2, 0x3dd73a47, 0xbe57f152,
    0xbdabf4b7, 0xbd21e235, 0x3e713523, 0x3dd0bb92,
    0xbe51f2be, 0xbe190298, 0xbe38937d, 0x3eadf3b4,
    0xbb850110, 0x3dc99e73, 0xbd2dc6ef, 0x3c4f21c4,
    0xbdfc69e8, 0x3ebde737, 0x3d9484dd, 0x3e8ca39e,
    0xbb7a9460, 0x3ce80b7a, 0xbd550f99, 0xbd51fb7b,
    0xbced6a5e, 0x3e2893d4, 0x3e25f6c8, 0xbbf1156e,
    0x3e3e5729, 0xbd9abc40, 0xbdf75064, 0x3d2b6ea7,
    0xbe3164ba, 0xbe2b400f, 0x3e18bedf, 0xbe9b3922,
    0xbdea26f8, 0xbe3cf88d, 0x3e01f29f, 0x3e2622f1,
    0x3de0207e, 0xbe1112a7, 0x3e07e67d, 0xbd97720f,
    0x3e83302b, 0xbd8d69ea, 0xbcb90706, 0xbe0b340d,
    0x3df1312d, 0xbddf80e7, 0x3daacad8, 0x3c8b921f,
    0x3e3aecf7, 0xbe4af0bf, 0xbcff0ea8, 0x3db2bd1c,
    0xbd8ecc4c, 0x3c8497fa, 0xbe3e2e21, 0x3da6f946,
    0x3d63bd92, 0x3dfbd5ee, 0xbd3489b2, 0xbe262b1d,
    0xbe077050, 0xbd9f0e16, 0xbd7377a7, 0x3e3650a2,
    0x3e028a94, 0x3d717602, 0x3e40ed6a, 0xbd06fa48,
    0x3ec92776, 0xbd889df8, 0x3e79bb6f, 0x3e298f1d,
    0xbe3dd119, 0x3e96f27f, 0xbd103242, 0x3e57d308,
    0xbda17633, 0x3e50ddef, 0x3ddbf01a, 0x3d8e36f5,
    0x3d127755, 0xbd215276, 0x3dafe1a6, 0x3e5e9906,
    0xbe207946, 0xbeb25862, 0x3dabf47c, 0x3df042fa,
    0xbd7916a0, 0xbe7d280f, 0xbe98cbae, 0xbdffd3b8
    };

static const uint32_t ref_dot_prod_3[1] = {
    0xbe8fbe76
    };

static const uint32_t ref_dot_prod_4[1] = {
    0xbd6d1840
    };

static const uint32_t ref_dot_prod_4n1[1] = {
    0xbe07d278
    };

static const uint32_t ref_dot_prod_long[1] = {
    0x3ebea4ef
    };

static const uint32_t ref_abs[256] = {
    0x3ef42097, 0x3e86ad95, 0x3e3ea847, 0x3e18687c,
    0x3e0167c4, 0x3eed738c, 0x3e9bf9d4, 0x3b730272,
    0x3e012b5c, 0x3d8bd341, 0x3e56c288, 0x3e2b7752,
    0x3d6d3ae8, 0x3ea5bd92, 0x3e856a1c, 0x3e95df0f,
    0x3b22b472, 0x3d0be8f1, 0x3cf508cb, 0x3e1dd77f,
    0x3dac3a95, 0x3d9ab863, 0x3e79b6ec, 0x3d8a169d,
    0x3f4d8634, 0x3dbc68d8, 0x3daafaa7, 0x3f014ff9,
    0x3ec1a42b, 0x3ef5ddf1, 0x3cafe569, 0x3e2a281a,
    0x3e91440f, 0x3ecd254e, 0x3e96be70, 0x3e88e908,
    0x3ef1707d, 0x3e37712d, 0x3e5c9d81, 0x3f023aa5,
    0x3e22c3c5, 0x3f6cf542, 0x3ee3d442, 0x3cf98294,
    0x3ea409ea, 0x3ec3f4fa, 0x3daae52b, 0x3e5a3e26,
    0x3ec6c48c, 0x3db20a6e, 0x3d5a76b9, 0x3eb19ab8,
    0x3e2e70e0, 0x3e250bbc, 0x3b924224, 0x3e63e842,
    0x3e869163, 0x3f3cf722, 0x3e34791d, 0x3e47b92b,
    0x3d067f62, 0x3ee01a2b, 0x3e65e261, 0x3ebf2507,
    0x3d988616, 0x3d096da3, 0x3e9d26da, 0x3d5ed2dc,
    0x3ed71c52, 0x3d7fd166, 0x3f07cd34, 0x3efc0ec4,
    0x3ed07597, 0x3cb1d1bc, 0x3eacec8a, 0x3eb0c7a7,
    0x3e9178b9, 0x3edfebfc, 0x3efa2823, 0x3dfe0776,
    0x3be138f4, 0x3ed2bc15, 0x3ed07289, 0x3e945180,
    0x3e30f7f5, 0x3e838d1c, 0x3ec79c1e, 0x3e0061c6,
    0x3eab34af, 0x3e740af6, 0x3e2e9bac, 0x3c4bc189,
    0x3ec7311c, 0x3f24d251, 0x3eaef71a, 0x3e2604cf,
    0x3eaf43a4, 0x3d8c5231, 0x3e5d61fb, 0x3f02bc90,
    0x3e37a19b, 0x3e30f194, 0x3e89922c, 0x3e5b789a,
    0x3ccd7401, 0x3e8fee45, 0x3f800000, 0x3e5c746d,
    0x3ebc6e53, 0x3e216b0d, 0x3f006d30, 0x3ef1d883,
    0x3dd6709e, 0x3df75fd2, 0x3d9da1a9, 0x3eb73e4d,
    0x3e2fe102, 0x3ebc2abc, 0x3e55d2b7, 0x3ea0772a,
    0x3d25ad3e, 0x3ed66b20, 0x3ecb63d4, 0x3ea07d49,
    0x3df0d341, 0x3f20e8ac, 0x3d06b855, 0x3e21e1fa,
    0x3de85bb8, 0x3ef7e694, 0x3e505258, 0x3ee6e07b,
    0x3e6db444, 0x3e720578, 0x3e4590de, 0x3ca8fd1c,
    0x3e94d923, 0x3d83b1af, 0x3cc1590d, 0x3f3e0520,
    0x3e2d81ab, 0x3dc0f1d9, 0x3e9508fe, 0x3ecf4489,
    0x3b15e5b9, 0x3d5d2df0, 0x3de3eec5, 0x3e65fedc,
    0x3d378e4e, 0x3ed0fc07, 0x3b2ae32e, 0x3eaddfb5,
    0x3dbdeec5, 0x3ee8db66, 0x3e828b90, 0x3deb4f3a,
    0x3ef2c3f9, 0x3e08fd16, 0x3d4309f7, 0x3de5696b,
    0x3db4c760, 0x3eb8cff2, 0x3e573a47, 0x3ed7f152,
    0x3e2bf4b7, 0x3da1e235, 0x3ef13523, 0x3e50bb92,
    0x3ed1f2be, 0x3e990298, 0x3eb8937d, 0x3f2df3b4,
    0x3c050110, 0x3e499e73, 0x3dadc6ef, 0x3ccf21c4,
    0x3e7c69e8, 0x3f3de737, 0x3e1484dd, 0x3f0ca39e,
    0x3bfa9460, 0x3d680b7a, 0x3dd50f99, 0x3dd1fb7b,
    0x3d6d6a5e, 0x3ea893d4, 0x3ea5f6c8, 0x3c71156e,
    0x3ebe5729, 0x3e1abc40, 0x3e775064, 0x3dab6ea7,
    0x3eb164ba, 0x3eab400f, 0x3e98bedf, 0x3f1b3922,
    0x3e6a26f8, 0x3ebcf88d, 0x3e81f29f, 0x3ea622f1,
    0x3e60207e, 0x3e9112a7, 0x3e87e67d, 0x3e17720f,
    0x3f03302b, 0x3e0d69ea, 0x3d390706, 0x3e8b340d,
    0x3e71312d, 0x3e5f80e7, 0x3e2acad8, 0x3d0b921f,
    0x3ebaecf7, 0x3ecaf0bf, 0x3d7f0ea8, 0x3e32bd1c,
    0x3e0ecc4c, 0x3d0497fa, 0x3ebe2e21, 0x3e26f946,
    0x3de3bd92, 0x3e7bd5ee, 0x3db489b2, 0x3ea62b1d,
    0x3e877050, 0x3e1f0e16, 0x3df377a7, 0x3eb650a2,
    0x3e828a94, 0x3df17602, 0x3ec0ed6a, 0x3d86fa48,
    0x3f492776, 0x3e089df8, 0x3ef9bb6f, 0x3ea98f1d,
    0x3ebdd119, 0x3f16f27f, 0x3d903242, 0x3ed7d308,
    0x3e217633, 0x3ed0ddef, 0x3e5bf01a, 0x3e0e36f5,
    0x3d927755, 0x3da15276, 0x3e2fe1a6, 0x3ede9906,
    0x3ea07946, 0x3f325862, 0x3e2bf47c, 0x3e7042fa,
    0x3df916a0, 0x3efd280f, 0x3f18cbae, 0x3e7fd3b8
    };

static const uint32_t ref_clip1[259] = {
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbefceb99, 0xbef974a5, 0xbef5fdb1, 0xbef286bd,
    0xbeef0fc9, 0xbeeb98d4, 0xbee821e0, 0xbee4aaec,
    0xbee133f8, 0xbeddbd04, 0xbeda4610, 0xbed6cf1c,
    0xbed35828, 0xbecfe134, 0xbecc6a40, 0xbec8f34c,
    0xbec57c58, 0xbec20564, 0xbebe8e70, 0xbebb177c,
    0xbeb7a088, 0xbeb42993, 0xbeb0b29f, 0xbead3bab,
    0xbea9c4b7, 0xbea64dc3, 0xbea2d6cf, 0xbe9f5fdb,
    0xbe9be8e7, 0xbe9871f3, 0xbe94faff, 0xbe91840b,
    0xbe8e0d17, 0xbe8a9623, 0xbe871f2f, 0xbe83a83b,
    0xbe803146, 0xbe7974a5, 0xbe7286bd, 0xbe6b98d4,
    0xbe64aaec, 0xbe5dbd04, 0xbe56cf1c, 0xbe4fe134,
    0xbe48f34c, 0xbe420564, 0xbe3b177c, 0xbe342993,
    0xbe2d3bab, 0xbe264dc3, 0xbe1f5fdb, 0xbe1871f3,
    0xbe11840b, 0xbe0a9623, 0xbe03a83b, 0xbdf974a5,
    0xbdeb98d4, 0xbdddbd04, 0xbdcfe134, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd, 0xbdcccccd,
    0xbdcccccd, 0xbdcccccd, 0xbdcccccd
    };

static const uint32_t ref_clip2[264] = {
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbf000000, 0xbf000000, 0xbf000000, 0xbf000000,
    0xbefceb99, 0xbef974a5, 0xbef5fdb1, 0xbef286bd,
    0xbeef0fc9, 0xbeeb98d4, 0xbee821e0, 0xbee4aaec,
    0xbee133f8, 0xbeddbd04, 0xbeda4610, 0xbed6cf1c,
    0xbed35828, 0xbecfe134, 0xbecc6a40, 0xbec8f34c,
    0xbec57c58, 0xbec20564, 0xbebe8e70, 0xbebb177c,
    0xbeb7a088, 0xbeb42993, 0xbeb0b29f, 0xbead3bab,
    0xbea9c4b7, 0xbea64dc3, 0xbea2d6cf, 0xbe9f5fdb,
    0xbe9be8e7, 0xbe9871f3, 0xbe94faff, 0xbe91840b,
    0xbe8e0d17, 0xbe8a9623, 0xbe871f2f, 0xbe83a83b,
    0xbe803146, 0xbe7974a5, 0xbe7286bd, 0xbe6b98d4,
    0xbe64aaec, 0xbe5dbd04, 0xbe56cf1c, 0xbe4fe134,
    0xbe48f34c, 0xbe420564, 0xbe3b177c, 0xbe342993,
    0xbe2d3bab, 0xbe264dc3, 0xbe1f5fdb, 0xbe1871f3,
    0xbe11840b, 0xbe0a9623, 0xbe03a83b, 0xbdf974a5,
    0xbdeb98d4, 0xbdddbd04, 0xbdcfe134, 0xbdc20564,
    0xbdb42993, 0xbda64dc3, 0xbd9871f3, 0xbd8a9623,
    0xbd7974a5, 0xbd5dbd04, 0xbd420564, 0xbd264dc3,
    0xbd0a9623, 0xbcddbd04, 0xbca64dc3, 0xbc5dbd04,
    0xbbddbd04, 0x0, 0x3bddbd04, 0x3c5dbd04,
    0x3ca64dc3, 0x3cddbd04, 0x3d0a9623, 0x3d264dc3,
    0x3d420564, 0x3d5dbd04, 0x3d7974a5, 0x3d8a9623,
    0x3d9871f3, 0x3da64dc3, 0x3db42993, 0x3dc20564,
    0x3dcfe134, 0x3dddbd04, 0x3deb98d4, 0x3df974a5,
    0x3e03a83b, 0x3e0a9623, 0x3e11840b, 0x3e1871f3,
    0x3e1f5fdb, 0x3e264dc3, 0x3e2d3bab, 0x3e342993,
    0x3e3b177c, 0x3e420564, 0x3e48f34c, 0x3e4fe134,
    0x3e56cf1c, 0x3e5dbd04, 0x3e64aaec, 0x3e6b98d4,
    0x3e7286bd, 0x3e7974a5, 0x3e803146, 0x3e83a83b,
    0x3e871f2f, 0x3e8a9623, 0x3e8e0d17, 0x3e91840b,
    0x3e94faff, 0x3e9871f3, 0x3e9be8e7, 0x3e9f5fdb,
    0x3ea2d6cf, 0x3ea64dc3, 0x3ea9c4b7, 0x3ead3bab,
    0x3eb0b29f, 0x3eb42993, 0x3eb7a088, 0x3ebb177c,
    0x3ebe8e70, 0x3ec20564, 0x3ec57c58, 0x3ec8f34c,
    0x3ecc6a40, 0x3ecfe134, 0x3ed35828, 0x3ed6cf1c,
    0x3eda4610, 0x3eddbd04, 0x3ee133f8, 0x3ee4aaec,
    0x3ee821e0, 0x3eeb98d4, 0x3eef0fc9, 0x3ef286bd,
    0x3ef5fdb1, 0x3ef974a5, 0x3efceb99, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000
    };

static const uint32_t ref_clip3[267] = {
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcccccd, 0x3dcccccd, 0x3dcccccd, 0x3dcccccd,
    0x3dcfe134, 0x3dddbd04, 0x3deb98d4, 0x3df974a5,
    0x3e03a83b, 0x3e0a9623, 0x3e11840b, 0x3e1871f3,
    0x3e1f5fdb, 0x3e264dc3, 0x3e2d3bab, 0x3e342993,
    0x3e3b177c, 0x3e420564, 0x3e48f34c, 0x3e4fe134,
    0x3e56cf1c, 0x3e5dbd04, 0x3e64aaec, 0x3e6b98d4,
    0x3e7286bd, 0x3e7974a5, 0x3e803146, 0x3e83a83b,
    0x3e871f2f, 0x3e8a9623, 0x3e8e0d17, 0x3e91840b,
    0x3e94faff, 0x3e9871f3, 0x3e9be8e7, 0x3e9f5fdb,
    0x3ea2d6cf, 0x3ea64dc3, 0x3ea9c4b7, 0x3ead3bab,
    0x3eb0b29f, 0x3eb42993, 0x3eb7a088, 0x3ebb177c,
    0x3ebe8e70, 0x3ec20564, 0x3ec57c58, 0x3ec8f34c,
    0x3ecc6a40, 0x3ecfe134, 0x3ed35828, 0x3ed6cf1c,
    0x3eda4610, 0x3eddbd04, 0x3ee133f8, 0x3ee4aaec,
    0x3ee821e0, 0x3eeb98d4, 0x3eef0fc9, 0x3ef286bd,
    0x3ef5fdb1, 0x3ef974a5, 0x3efceb99, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000, 0x3f000000,
    0x3f000000, 0x3f000000, 0x3f000000
    };

